import java.io.*;
import java.net.*;
import java.util.*;
import java.sql.*;


/* Classe WebServer, cria o socket, e a cada nova conexao uma nova thread do tipo Client eh lancada */
public class WebServer extends Thread{
    private ServerSocket server;

    /* Construtor da classe, ao ser inicializado o socket eh criado e ligado a porta da maquina */

    public WebServer (int port) throws Exception {
        this.server = new ServerSocket(port);
    }

    /* A cada nova conexao uma thread Client eh lancada */
    public void run(){
        try{
            while(true){
                System.out.println("Waiting...");
                Socket socket = this.server.accept();
                ServerThread threadServer = new ServerThread(socket);
                threadServer.start();

            }
        }catch(Exception e){e.printStackTrace();}
    }


    public static void main( String args[]) throws Exception {
        
        if(args.length != 1){
            System.out.println("Need arguments...");
            System.exit(0);
        }

        Integer port = new Integer(args[0]);
        WebServer web = new WebServer(port.intValue());
        web.start();
    }
}





